Skip to content

Conversation

@Johennes
Copy link
Contributor

@Johennes Johennes commented Sep 30, 2025

@Johennes Johennes changed the title MSCXXXX: OAuth step up authentication MSC4363: OAuth step up authentication Sep 30, 2025
@Johennes Johennes force-pushed the johannes/oauth-step-up-authentication branch from 5769520 to fd17d14 Compare September 30, 2025 11:03
@Johennes Johennes marked this pull request as ready for review September 30, 2025 11:04
@turt2live turt2live added proposal A matrix spec change proposal client-server Client-Server API kind:core MSC which is critical to the protocol's success needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. labels Sep 30, 2025
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implementation requirements:

  • Client (ideally multiple)
  • Server

Copy link
Contributor

@zecakeh zecakeh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple of nits on the wording.

Johennes and others added 2 commits October 2, 2025 16:52
Co-authored-by: Kévin Commaille <[email protected]>
Co-authored-by: Kévin Commaille <[email protected]>
@hughns hughns requested review from hughns and sandhose October 31, 2025 13:10
Comment on lines +72 to +76
### Cross-signing key reset

Implementations MAY use this proposal to replace UIA when the client has obtained its access token
via the OAuth APIs. The only endpoint currently using UIA for which this is relevant is
[/_matrix/client/v3/keys/device_signing/upload].
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could consider introducing a dedicated scope to support this. Though I think it is not strictly needed. The only advantage I can think of is that clients could request the scope ahead of hitting the endpoint.


### Cross-signing key reset

Implementations MAY use this proposal to replace UIA when the client has obtained its access token
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Problem: when the homeserver receives a request to POST /_matrix/client/v3/keys/device_signing/upload, how does it know whether it should respond with the m.oauth flow stage from MSC4312, or the new M_INSUFFICIENT_USER_AUTHENTICATION errcode?

We would want the server to be backwards compatible with older clients, so I think the server needs to know what the client supports.

So, basically some kind of versioning:

  • query param?
  • body param?
  • /_matrix/client/v3/keys/device_signing/upload -> /_matrix/client/v4/keys/device_signing/upload?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

client-server Client-Server API kind:core MSC which is critical to the protocol's success needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. proposal A matrix spec change proposal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants